OpenStack Havana - Configure Neutron#2(Network Node)
2013/10/29 |
Configure OpenStack Network Service (Neutron).
This example configures like the environment below.
Install Neutron Server on Controle Node, and Install DHCP, L3, L2 Agent on Network Node, and Install L2 Agent on Compute Node. | +------------------+ | +------------------------+ | [ Control Node ] |10.0.0.30 | 10.0.0.50| [ Network Node ] | | Keystone |------------+------------| DHCP Agent | | Neutron Server | | | L3 Agent | +------------------+ | | L2 Agent | | +------------------------+ | |10.0.0.51 +--------------------+ | [ Compute Node ] | | Nova | | L2 Agent | +--------------------+ |
Configure Network Node on here.
By the way, Neutron needs a plugin software, it's possible to choose it from some softwares. This example chooses Open vSwitch plugin. |
|
[1] | Enable IP forwarding first. |
[root@network ~]# sed -i -e "s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" /etc/sysctl.conf [root@network ~]# sysctl -p |
[2] | Update from EPEL OpenStack to use Network Namespace and install some packages like follows. |
# install from EPEL OpenStack, EPEL [root@network ~]# yum --enablerepo=openstack-havana,epel -y update [root@network ~]# yum --enablerepo=openstack-havana,epel -y install openstack-neutron openstack-neutron-openvswitch python-keystoneclient [root@network ~]# |
[3] | Load environment variables.( The value is set in Keystone ) |
[root@network ~]#
vi ~/keystonerc_neutron
export OS_USERNAME=neutron
export OS_PASSWORD=servicepassword export OS_TENANT_NAME=service export OS_AUTH_URL=http://10.0.0.30:35357/v2.0/ export PS1='[\u@\h \W(neutron)]\$ ' chmod 600 ~/keystonerc_neutron [root@network ~]# source ~/keystonerc_neutron [root@network ~(neutron)]# echo "source ~/keystonerc_neutron " >> ~/.bash_profile
|
[4] | Configure DHCP, L3, L2 Agent |
[root@network ~(neutron)]#
neutron-dhcp-setup --plugin openvswitch Neutron plugin: openvswitch Please enter the Neutron hostname: 10.0.0.30 # specify QPID server Configuration updates complete! [root@network ~(neutron)]# neutron-l3-setup --plugin openvswitch Neutron plugin: openvswitch Please enter the Neutron hostname: 10.0.0.30 # specify QPID server Configuration updates complete! [root@network ~(neutron)]# neutron-node-setup --plugin openvswitch Neutron plugin: openvswitch Please enter the Neutron hostname: 10.0.0.30 # specify QPID server Would you like to update the nova configuration files? (y/n): n Complete!
[root@network ~(neutron)]#
vi /etc/neutron/neutron.conf # near line 5: add
core_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
# line 110: uncomment control_exchange = neutron # line 301: uncomment and change root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf
[root@network ~(neutron)]#
vi /etc/neutron/dhcp_agent.ini # near line 8: add
root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf
[root@network ~(neutron)]#
vi /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini # add at the last (specify Neutron DB)
[DATABASE]
sql_connection = mysql://neutron:neutron@10.0.0.30/ovs_neutron /etc/rc.d/init.d/openvswitch start [root@network ~(neutron)]# chkconfig openvswitch on [root@network ~(neutron)]# ovs-vsctl add-br br-int [root@network ~(neutron)]# for service in dhcp-agent l3-agent openvswitch-agent; do /etc/rc.d/init.d/neutron-$service start chkconfig neutron-$service on done Starting neutron-dhcp-agent: [ OK ] Starting neutron-l3-agent: [ OK ] Starting neutron-openvswitch-agent: [ OK ] |